home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2002 #11 / Amiga Plus CD - 2002 - No. 11.iso / Tools / Development / PowerD / powerd / modules.lha / modules / lib / powerd_ieee.m < prev    next >
Encoding:
Text File  |  2002-06-01  |  6.3 KB  |  178 lines

  1. OPT    LINK='powerd_ieee.lib'
  2.  
  3. // String/EString functions ////////////
  4. RPROC DupEStr(a0:PTR TO CHAR)(PTR TO CHAR)
  5. RPROC DupEStrPooled(a0:PTR,a1:PTR TO CHAR)(PTR TO CHAR)
  6. RPROC DupStr(a0:PTR TO CHAR)(PTR TO CHAR)
  7. RPROC DupStrPooled(a0:PTR,a1:PTR TO CHAR)(PTR TO CHAR)
  8. RPROC EStrAdd(a0:PTR TO CHAR,a1:PTR TO CHAR,d0=-1)(PTR TO CHAR)
  9. LPROC EStrCopy(dstr:PTR TO CHAR,sstr:PTR TO CHAR,length=-1)(PTR TO CHAR)
  10. LPROC EStringF(dstr:PTR TO CHAR,fstr:PTR TO CHAR,list=NIL:LIST OF LONG)(PTR TO CHAR)
  11. LPROC VEStringF(dstr:PTR TO CHAR,fstr:PTR TO CHAR,list=NIL:PTR TO LONG)(PTR TO CHAR)
  12. RPROC EStrLen(a0:PTR TO CHAR)(LONG)
  13. RPROC EStrMax(a0:PTR TO CHAR)(LONG)
  14. RPROC InStr(a0:PTR TO CHAR,a1:PTR TO CHAR,d0=0:LONG)(LONG)
  15. RPROC MidEStr(a0:PTR TO CHAR,a1:PTR TO CHAR,d1,d0)(PTR TO CHAR)
  16. //LPROC MidStr(string:PTR TO CHAR,str:PTR TO CHAR,start,length)(PTR TO CHAR)
  17. RPROC HiChar(d0:LONG)(LONG)
  18. RPROC IsAlpha(d0:LONG)(BOOL)
  19. RPROC IsBin(d0:LONG)(BOOL)
  20. RPROC IsHex(d0:LONG)(BOOL)
  21. RPROC IsNum(d0:LONG)(BOOL)
  22. RPROC LoChar(d0:LONG)(LONG)
  23. RPROC LowerStr(a0:PTR TO CHAR)(PTR TO CHAR)
  24. RPROC NewEStr(d0:UWORD)(PTR TO CHAR)
  25. RPROC OStrCmp(a0:PTR TO CHAR,a1:PTR TO CHAR,d0=-1)(LONG)
  26. LPROC ReadEStr(fh:BPTR,estr:PTR TO CHAR)(LONG)
  27. //LPROC ReadStr(fh:BPTR,str:PTR TO CHAR)(LONG)
  28. RPROC ReEStr(a0:PTR TO CHAR)
  29. RPROC RemEStr(a1:PTR TO CHAR)
  30. RPROC RemStr(a1:PTR TO CHAR)
  31. LPROC RightEStr(dstr:PTR TO CHAR,sstr:PTR TO CHAR,length)(PTR TO CHAR)
  32. //LPROC RightStr(dstr:PTR TO CHAR,sstr:PTR TO CHAR,length)(PTR TO CHAR)
  33. RPROC SetEStr(a0:PTR TO CHAR,d0:LONG)
  34. RPROC StrAdd(a0:PTR TO CHAR,a1:PTR TO CHAR,d0=-1)(BOOL)
  35. RPROC StrCmp(a0:PTR TO CHAR,a1:PTR TO CHAR,d0=-1)(BOOL)
  36. RPROC StrCopy(a0:PTR TO CHAR,a1:PTR TO CHAR,d0=-1)(BOOL)
  37. LPROC StringF(dstr:PTR TO CHAR,fstr:PTR TO CHAR,list=NIL:LIST OF LONG)(PTR TO CHAR)
  38. LPROC VStringF(dstr:PTR TO CHAR,fstr:PTR TO CHAR,list=NIL:PTR TO LONG)(PTR TO CHAR)
  39. RPROC StrLen(a0:PTR TO CHAR)(LONG)
  40. RPROC TrimStr(a0:PTR TO CHAR)(PTR TO CHAR)
  41. RPROC UpperStr(a0:PTR TO CHAR)(PTR TO CHAR)
  42.  
  43. RPROC WriteF(a0:PTR TO CHAR,a1=NIL:LIST OF LONG)
  44. RPROC VWriteF(a0:PTR TO CHAR,a1=NIL:PTR TO LONG)
  45.  
  46. // added in v0.19alpha7:
  47. LPROC CStrCmp(stra:PTR TO CHAR,strb:PTR TO CHAR)(L)
  48.  
  49. // List functions
  50.  
  51. // Math functions //////////////////////
  52. RPROC Abs(d0:LONG)(LONG)
  53. RPROC And(d0:LONG,d1:LONG)(LONG)='and.l\td1,d0'
  54. RPROC BitCount(d0:LONG)(LONG)
  55. RPROC BitSize(d0:LONG)(LONG)
  56. RPROC EOr(d0:LONG,d1:LONG)(LONG)='eor.l\td1,d0'
  57. RPROC HiBit(d0:LONG)(LONG)
  58. RPROC LoBit(d0:LONG)(LONG)
  59. RPROC Or(d0:LONG,d1:LONG)(LONG)='or.l\td1,d0'
  60. RPROC Neg(d0:LONG)(LONG)='neg.l\td0'
  61. RPROC Not(d0:LONG)(LONG)='not.l\td0'
  62. RPROC Rol(d0:LONG,d1:LONG)(LONG)='rol.l\td1,d0'
  63. RPROC Ror(d0:LONG,d1:LONG)(LONG)='ror.l\td1,d0'
  64. RPROC Shl(d0:LONG,d1:LONG)(LONG)='asl.l\td1,d0'
  65. RPROC Shr(d0:LONG,d1:LONG)(LONG)='asr.l\td1,d0'
  66. RPROC Sign(d0:LONG)(LONG)
  67.  
  68. // FPU functions ///////////////////////
  69. RPROC Pow(fp0:DOUBLE,fp1:DOUBLE)(DOUBLE)
  70. RPROC Cos(fp0:DOUBLE)(DOUBLE)
  71. RPROC Sin(fp0:DOUBLE)(DOUBLE)
  72. RPROC Tan(fp0:DOUBLE)(DOUBLE)
  73. RPROC Cosh(fp0:DOUBLE)(DOUBLE)
  74. RPROC Sinh(fp0:DOUBLE)(DOUBLE)
  75. RPROC Tanh(fp0:DOUBLE)(DOUBLE)
  76. RPROC ACos(fp0:DOUBLE)(DOUBLE)
  77. RPROC ASin(fp0:DOUBLE)(DOUBLE)
  78. RPROC ATan(fp0:DOUBLE)(DOUBLE)
  79. RPROC FAbs(fp0:DOUBLE)(DOUBLE)
  80. RPROC Sqrt(fp0:DOUBLE)(DOUBLE)
  81. //RPROC ATanh(fp0:DOUBLE)(DOUBLE)='fatanh.x\tfp0'
  82. RPROC Log(fp0:DOUBLE)(DOUBLE)
  83. RPROC Ln(fp0:DOUBLE)(DOUBLE)
  84. //RPROC Log2(fp0:DOUBLE)(DOUBLE)='flog2.x\tfp0'
  85. //RPROC Int(fp0:DOUBLE)(DOUBLE)='fint.x\tfp0'
  86. //RPROC Rem(fp0:DOUBLE)(DOUBLE)='frem.x\tfp0'
  87. //RPROC EToX(fp0:DOUBLE)(DOUBLE)='fetox.x\tfp0'
  88. RPROC FNeg(fp0:DOUBLE)(DOUBLE)
  89. RPROC F2I(fp0:D)(L)
  90.  
  91. // Intuition support functions /////////
  92. RPROC Mouse()(LONG)
  93. RPROC MouseX(a0:PTR TO Window)(LONG)
  94. RPROC MouseXY(a0:PTR TO Window)(LONG,LONG)
  95. RPROC MouseY(a0:PTR TO Window)(LONG)
  96. RPROC WaitIMessage(a0:PTR TO Window)(LONG,LONG,LONG,LONG)
  97.  
  98. // Miscellaneous functions /////////////
  99. RPROC CtrlC()(BOOL)
  100. RPROC CtrlD()(BOOL)
  101. RPROC CtrlE()(BOOL)
  102. RPROC CtrlF()(BOOL)
  103.  
  104. RPROC Byte(a0:PTR TO BYTE)(LONG)='move.b\t(a0),d0\n\textb.l\td0'
  105. RPROC Word(a0:PTR TO WORD)(LONG)='move.w\t(a0),d0\n\text.l\td0'
  106. RPROC Long(a0:PTR TO LONG)(LONG)='move.l\t(a0),d0'
  107. RPROC UByte(a0:PTR TO BYTE)(LONG)='move.b\t(a0),d0\n\tandi.l\t#$ff,d0'
  108. RPROC UWord(a0:PTR TO WORD)(LONG)='move.w\t(a0),d0\n\tandi.l\t#$ffff,d0'
  109. RPROC ULong(a0:PTR TO LONG)(LONG)='move.l\t(a0),d0'
  110. RPROC Float(a0:PTR TO FLOAT)(FLOAT)='fmove.s\t(a0),fp0'
  111. RPROC Double(a0:PTR TO DOUBLE)(DOUBLE)='fmove.d\t(a0),fp0'
  112.  
  113. RPROC PutByte(a0:PTR TO BYTE,d0:LONG)='move.b\td0,(a0)'
  114. RPROC PutWord(a0:PTR TO WORD,d0:LONG)='move.w\td0,(a0)'
  115. RPROC PutLong(a0:PTR TO LONG,d0:LONG)='move.l\td0,(a0)'
  116. RPROC PutFloat(a0:PTR TO FLOAT,fp0:FLOAT)='fmove.s\tfp0,(a0)'
  117. RPROC PutDouble(a0:PTR TO DOUBLE,fp0:DOUBLE)='fmove.d\tfp0,(a0)'
  118.  
  119. RPROC ReByte(d0:BYTE)(LONG)='extb.l\td0'
  120. RPROC ReWord(d0:WORD)(LONG)='ext.l\td0'
  121. RPROC ReUByte(d0:UBYTE)(LONG)='andi.l\t#$ff,d0'
  122. RPROC ReUWord(d0:UWORD)(LONG)='andi.l\t#$ffff,d0'
  123.  
  124. RPROC Bounds(d0:LONG,d1:LONG,d2:LONG)(LONG)
  125. RPROC InBounds(d0:LONG,d1:LONG,d2:LONG)(BOOL)
  126. RPROC Even(d0:LONG)(BOOL)
  127. RPROC Odd(d0:LONG)(BOOL)
  128. RPROC Max(d0:LONG,d1:LONG)(LONG)
  129. RPROC Min(d0:LONG,d1:LONG)(LONG)
  130.  
  131. RPROC Rnd(d0:LONG)(LONG)
  132. RPROC RndQ(d0:LONG)(LONG)
  133.  
  134. EPROC FileLength(name:PTR TO CHAR)(LONG)
  135. RPROC KickVersion(d0:LONG)(BOOL)
  136.  
  137. RPROC Inp(d1:BPTR)(LONG)
  138. RPROC Out(d1:BPTR,d2:LONG)
  139.  
  140. EPROC RealStr(str:PTR TO UBYTE,f:DOUBLE,n=1)(PTR TO UBYTE)
  141. EPROC RealEStr(estr:PTR TO UBYTE,f:DOUBLE,n=1)(PTR TO UBYTE)
  142. EPROC RealVal(str:PTR TO UBYTE,pos=0)(DOUBLE,LONG)
  143. EPROC Val(s:PTR TO UBYTE,n=0)(LONG,LONG)
  144.  
  145. RPROC AllocVecPooled(a0:APTR,d0:LONG)(PTR)
  146. RPROC FreeVecPooled(a0:APTR,a1:PTR)
  147.  
  148. EPROC New(length)(PTR)
  149. EPROC NewR(length)(PTR)
  150. EPROC NewM(length,flags)(PTR)
  151. EPROC Dispose(memptr)
  152.  
  153. RPROC Raise(d0=NIL:LONG,d1=NIL:LONG)
  154. EDEF    exception,exceptioninfo
  155.  
  156. EPROC OpenW(l,t,w,h,i,f,n=NIL,s=NIL,st=1,g=NIL,tags=NIL:PTR TO TagItem)(PTR TO Window)
  157. EDEF    stdrast
  158. EPROC OpenS(w,h,d,t=0,n=NIL,tags=NIL:PTR TO TagItem)(PTR TO Screen)
  159. RPROC CloseW(a0:PTR TO Window)
  160. RPROC CloseS(a0:PTR TO Screen)
  161. RPROC SetColour(a0:PTR TO RastPort,d0,d1,d2,d3)
  162.  
  163. RPROC SetStdRast(d1:PTR TO RastPort)(PTR TO RastPort)
  164. RPROC Colour(d0,d1=0)
  165. RPROC Line(d0,d1,d2,d3,d4=-1)
  166. RPROC Plot(d0,d1,d2=-1)
  167. RPROC Box(d0,d1,d2,d3,d4=-1)
  168. RPROC Ellipse(d0,d1,d2,d3,d4=-1)
  169. RPROC Circle(d0,d1,d2,d3=-1)
  170. /*
  171. RPROC IBox(x,y,w,h,c=-1)
  172. RPROC TextF(x,y,fmt,args)
  173. */
  174.  
  175. // Quoted Expression functions /////////
  176. RPROC Eval(a0:PTR)(LONG)
  177. //RPROC MapList(a2:PTR TO LONG,a1:PTR TO LONG,d0:LONG,a3:PTR TO LONG,a0:PTR TO LONG)
  178.